﻿using System.Linq;
using ZBJF.Warranty.Common.Enums.Base;
using ZBJF.Warranty.Model;

namespace ZBJF.Warranty.IBLL
{
    public partial interface IInsuranceProductWarrantyMaintenanceTypesSnapshootService
    {
        /// <summary>
        /// 创建维修方式快照
        /// </summary>
        /// <param name="insuranceOrderId">保单表InsuranceOrder主键ID</param>
        /// <param name="serviceProjectType">保险信息类型：和ServiceProductType是同一个枚举，根据ServiceProjectType去不同的表取数据，比如手机维修保险信息，就去CellPhoneInsuranceInfo表取</param>
        /// <returns></returns>
        bool CreateSnapshoot(long insuranceOrderId, ServiceProductType serviceProjectType);

        /// <summary>
        /// 获取可用维修方式
        /// </summary>
        /// <param name="insuranceOrderServiceProjectId">选择的是哪个服务项目</param>
        /// <param name="serviceProjectType">保险信息类型：和ServiceProductType是同一个枚举，根据ServiceProjectType去不同的表取数据，比如手机维修保险信息，就去CellPhoneInsuranceInfo表取</param>
        /// <returns></returns>
        IQueryable<InsuranceProductWarrantyMaintenanceTypesSnapshoot> GetInsuranceProductWarrantyMaintenanceTypesSnapshoot(long insuranceOrderServiceProjectId, ServiceProductType serviceProjectType);
    }
}